curl --request PATCH \
--url https://{tenant_name}.{region}.techwolf.ai/companies/{external_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "TechWolf",
"vat": "BE0702852201",
"location": {
"lat": 51.0216707,
"lng": 3.6887328
},
"languages": [
{
"language": "nl",
"level": 2
}
]
}
'import requests
url = "https://{tenant_name}.{region}.techwolf.ai/companies/{external_id}"
payload = {
"name": "TechWolf",
"vat": "BE0702852201",
"location": {
"lat": 51.0216707,
"lng": 3.6887328
},
"languages": [
{
"language": "nl",
"level": 2
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: 'TechWolf',
vat: 'BE0702852201',
location: {lat: 51.0216707, lng: 3.6887328},
languages: [{language: 'nl', level: 2}]
})
};
fetch('https://{tenant_name}.{region}.techwolf.ai/companies/{external_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://{tenant_name}.{region}.techwolf.ai/companies/{external_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'name' => 'TechWolf',
'vat' => 'BE0702852201',
'location' => [
'lat' => 51.0216707,
'lng' => 3.6887328
],
'languages' => [
[
'language' => 'nl',
'level' => 2
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://{tenant_name}.{region}.techwolf.ai/companies/{external_id}"
payload := strings.NewReader("{\n \"name\": \"TechWolf\",\n \"vat\": \"BE0702852201\",\n \"location\": {\n \"lat\": 51.0216707,\n \"lng\": 3.6887328\n },\n \"languages\": [\n {\n \"language\": \"nl\",\n \"level\": 2\n }\n ]\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://{tenant_name}.{region}.techwolf.ai/companies/{external_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"TechWolf\",\n \"vat\": \"BE0702852201\",\n \"location\": {\n \"lat\": 51.0216707,\n \"lng\": 3.6887328\n },\n \"languages\": [\n {\n \"language\": \"nl\",\n \"level\": 2\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{tenant_name}.{region}.techwolf.ai/companies/{external_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"TechWolf\",\n \"vat\": \"BE0702852201\",\n \"location\": {\n \"lat\": 51.0216707,\n \"lng\": 3.6887328\n },\n \"languages\": [\n {\n \"language\": \"nl\",\n \"level\": 2\n }\n ]\n}"
response = http.request(request)
puts response.read_body[
{
"title": "400 Bad Request",
"description": "The request body was not structured correctly."
}
][
{
"title": "401 Unauthorized",
"description": "OAuth access token is missing, invalid or expired."
}
][
{
"title": "404 Not Found",
"description": "Unknown external_id describing this resource. Please create this resource first."
}
][
{
"title": "405 Method Not Allowed",
"description": "This method is not allowed for the requested URL."
}
][
{
"title": "413 Payload Too Large",
"description": "Request payload is too large."
}
][
{
"title": "415 Unsupported Media Type",
"description": "Content-type must be one of: application/json"
}
]"max connections reached: <limit>"[
{
"title": "503 Service Unavailable",
"description": "The Skill Engine API is currently not available. Please contact TechWolf or try again later."
}
]Update External Company
Submit the most up-to-date External Company information to update the information stored inside the system. Any field that is present will overwrite existing values within the system, while absent fields will be left as-is.
curl --request PATCH \
--url https://{tenant_name}.{region}.techwolf.ai/companies/{external_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "TechWolf",
"vat": "BE0702852201",
"location": {
"lat": 51.0216707,
"lng": 3.6887328
},
"languages": [
{
"language": "nl",
"level": 2
}
]
}
'import requests
url = "https://{tenant_name}.{region}.techwolf.ai/companies/{external_id}"
payload = {
"name": "TechWolf",
"vat": "BE0702852201",
"location": {
"lat": 51.0216707,
"lng": 3.6887328
},
"languages": [
{
"language": "nl",
"level": 2
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: 'TechWolf',
vat: 'BE0702852201',
location: {lat: 51.0216707, lng: 3.6887328},
languages: [{language: 'nl', level: 2}]
})
};
fetch('https://{tenant_name}.{region}.techwolf.ai/companies/{external_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://{tenant_name}.{region}.techwolf.ai/companies/{external_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'name' => 'TechWolf',
'vat' => 'BE0702852201',
'location' => [
'lat' => 51.0216707,
'lng' => 3.6887328
],
'languages' => [
[
'language' => 'nl',
'level' => 2
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://{tenant_name}.{region}.techwolf.ai/companies/{external_id}"
payload := strings.NewReader("{\n \"name\": \"TechWolf\",\n \"vat\": \"BE0702852201\",\n \"location\": {\n \"lat\": 51.0216707,\n \"lng\": 3.6887328\n },\n \"languages\": [\n {\n \"language\": \"nl\",\n \"level\": 2\n }\n ]\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://{tenant_name}.{region}.techwolf.ai/companies/{external_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"TechWolf\",\n \"vat\": \"BE0702852201\",\n \"location\": {\n \"lat\": 51.0216707,\n \"lng\": 3.6887328\n },\n \"languages\": [\n {\n \"language\": \"nl\",\n \"level\": 2\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{tenant_name}.{region}.techwolf.ai/companies/{external_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"TechWolf\",\n \"vat\": \"BE0702852201\",\n \"location\": {\n \"lat\": 51.0216707,\n \"lng\": 3.6887328\n },\n \"languages\": [\n {\n \"language\": \"nl\",\n \"level\": 2\n }\n ]\n}"
response = http.request(request)
puts response.read_body[
{
"title": "400 Bad Request",
"description": "The request body was not structured correctly."
}
][
{
"title": "401 Unauthorized",
"description": "OAuth access token is missing, invalid or expired."
}
][
{
"title": "404 Not Found",
"description": "Unknown external_id describing this resource. Please create this resource first."
}
][
{
"title": "405 Method Not Allowed",
"description": "This method is not allowed for the requested URL."
}
][
{
"title": "413 Payload Too Large",
"description": "Request payload is too large."
}
][
{
"title": "415 Unsupported Media Type",
"description": "Content-type must be one of: application/json"
}
]"max connections reached: <limit>"[
{
"title": "503 Service Unavailable",
"description": "The Skill Engine API is currently not available. Please contact TechWolf or try again later."
}
]Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Path Parameters
The unique ID in your system, consisting of alphanumeric characters, hyphens and underscores.
1 - 100[a-zA-Z0-9_-]+"a3903505-eb84-42dc-a79f-5e7b1fe897b7"
Body
Default structure for updating External Company data.
Name of the External Company.
1 - 255"TechWolf"
The VAT identification number for this External Company.
1 - 15"BE0702852201"
A geographic location, expressed in latitude and longitude. This can represent a home address, an office location... Each entity is limited to having a single location. To get the latitude and longitude for a given address, you can use the Google Maps Geocoding API or a predefined lookup table (for example by zip code). If location is present in matching or filters, it will act as an override for geo-distance calculations.
- Location
- Address
Show child attributes
Show child attributes
List of ISO 639-1 codes for language requirements of the External Company, combined with the proficiency level. The proficiency levels go from 1 (elementary proficiency) to 5 (native proficiency). If the level is omitted, the default proficiency level of 2 is used.
Show child attributes
Show child attributes
Response
No Content
Was this page helpful?